package com.iaiai.cobra.repository.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.iaiai.cobra.repository.bean.Menu;
import com.iaiai.cobra.repository.bean.po.MenuPo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * Created with MenuMapper.
 * Package: com.iaiai.cobra.repository.mapper
 * Author: iaiai
 * Create Time: 2024/6/24 20:22
 * QQ: 176291935
 * Email: 176291935@qq.com
 * Description:
 */
@Mapper
@Repository
public interface MenuMapper extends BaseMapper<Menu> {

    List<Menu> queryMenus(@Param("id") Long id);

    //查询所有的菜单，不包含子页面和功能项
    List<MenuPo> queryAllMenu();

    //查询所有的菜单，不包含子页面和功能项，不包含隐藏的不显示的
    List<MenuPo> queryNormalMenu();

    //查询角色下菜单项，包含子，只查菜单，不包含功能项和子页面
    List<MenuPo> queryRoleMenu(@Param("roleIds") String roleIds);

    //查询用户下路由项，包含子，菜单和子页面
    List<Menu> queryPageMenu(@Param("userId") Long userId);

}
